﻿using System;


namespace Obj
{
    public class objUsuario
    {


        #region NovosMetodos

        /// <summary>
        /// Construtor utilizado para inserir novos usuarios
        /// </summary>
        /// <param name="nome">Nome do usuario</param>
        /// <param name="email">Email do usuario</param>
        /// <param name="chave">chave gerada para o usuario</param>
        public objUsuario(string nome, string email, string chave)
        {
            this.Email = email;
            this.Nome = nome;
            this.Ativo = false;
            this.PermissaoID = 2;
            this.Chave = chave;

        }


        /// <summary>
        /// Construtor utilizado para ativar um usuario. 
        /// </summary>
        /// <param name="chave">Chave do usuario para ativacao</param>
        public objUsuario(string nome)
        {
            this.Nome = nome;

        }

        /// <summary>
        /// Construtor utilizado para deletar um usuario. 
        /// </summary>
        /// <param name="chave">Chave do usuario para ativacao</param>
        public objUsuario(int usuarioID)
        {
            this._usuarioID = usuarioID;

        }

        /// <summary>
        /// Construtor utilizado para Consultar um unico usuario 
        /// </summary>
        /// <param name="chave">Chave do usuario para ativacao</param>
        public objUsuario(string nome, string senha)
        {
            this.Nome = nome;
            this.Senha = senha;
        }

        /// <summary>
        /// Construtor utilizado para atualizar um usuario
        /// </summary>
        /// <param name="nome"></param>
        /// <param name="usuarioID"></param>
        /// <param name="senha"></param>
        public objUsuario(string nome, int usuarioID,  string senha)
        {

            this.Nome = nome;
            this.Senha = senha;
            this.UsuarioID = usuarioID;
        }



     
        #endregion


    







        #region Construtor








     
        public objUsuario(string nome, int usuarioID, string email, string senha, bool ativo, int permissaoID,string permissaoDescricao)
        {
            this.Ativo = ativo;
            this.Email = email;
            this.Nome = nome;
            this.PermissaoID = permissaoID;
            this.Senha = senha;
            this.UsuarioID = usuarioID;
            this.PermissaoDescricao = permissaoDescricao;
        }


        #endregion

        #region Propriedades Leitura
        private string _permissaoDescricao;

        public string PermissaoDescricao
        {
            get { return _permissaoDescricao; }
            set { _permissaoDescricao = value; }
        }
        #endregion

        #region Propriedades
        private string _nome;
        private int _usuarioID;
        private string _email;
        private string _senha;
        private bool _ativo;
        private int _permissaoID;
        private string _chave; 

        public string Chave
        {
            get { return _chave; }
            set { _chave = value;  }
        }
       

        public int UsuarioID
        {
            get { return _usuarioID; }
            set { _usuarioID = value; }
        }

        public string Nome
        {
            get { return _nome; }
            set { _nome = value; }
        }

        public string Email
        {
            get { return _email; }
            set { _email = value; }
        }

        public string Senha
        {
            get { return _senha; }
            set { _senha = value; }
        }

        public bool Ativo
        {
            get { return _ativo; }
            set { _ativo = value; }
        }

        public int PermissaoID
        {
            get { return _permissaoID; }
            set { _permissaoID = value; }
        }
        #endregion

    }
}